﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Onshi.POS.Modelo.Entidades;
using Onshi.POS.Repositorios;
using Onshi.POS.Proveedores.Vistas;
using Onshi.POS.Modelo.Enumeradores;

namespace Onshi.POS.Proveedores
{
    public class ProveedoresSeleccionarPresentador
    {
        #region Constructores

        public ProveedoresSeleccionarPresentador(IProveedoresSeleccionar vista)
        {
            this.vista = vista;
        }

        #endregion

        #region Atributos

        private IProveedoresSeleccionar vista;

        #endregion

        #region Propiedades

        private RepositorioProveedores RepositorioProveedores
        {
            get { return new RepositorioProveedores(); }
        }

        #endregion

        #region Metodos

        public void Seleccionar()
        {
            var proveedor = RepositorioProveedores.DevolverPorId(vista.IdProveedor);
            if (proveedor == null)
                throw new Exception("El proveedor no existe");
            vista.Nombre = proveedor.Nombre;
            vista.Codigo = proveedor.Codigo;
        }

        public void SeleccionarPorCodigo()
        {
            var proveedor = RepositorioProveedores.DevolverPorCodigo(vista.Codigo);
            if (proveedor == null)
                throw new Exception("El proveedor no existe");
            vista.IdProveedor = proveedor.Id;
            vista.Nombre = proveedor.Nombre;
            vista.Codigo = proveedor.Codigo;
        }

        #endregion
    }
}
